The invention is generally related to computer systems and graphical user interface environments therefor. More particularly, the invention is related to the control of user-manipulated pointing devices in a graphical user interface environment.
As computers have become more complex and powerful, the manner in which end users or operators interface with computers has grown increasingly important. Early computers relied on switches, lights, and/or punch cards that required an end user to interact essentially in the computers"" native binary languages. Eventually, video displays were developed that enabled end users to interact with computers through textual information and commands. Another significant step in this evolution was the development of graphical user interfaces (GUIs), which permitted end users to interact with computers through the more intuitive operations of xe2x80x9cpointing and clickingxe2x80x9d on graphical display elements with a pointer controlled by a mouse or other user interface device. When pointing and clicking, a user typically directs a graphical pointer over an object by moving the mouse, and then indicates a desire to interact with that object by depressing a button on the user interface device.
Providing additional functions with a pointing device (e.g., mouse, trackball, joystick, touch pad, touch screen) generally requires having a plurality of buttons on the pointing device, using the keyboard in combination with or to the exclusion of the pointing device, or repetitively depressing a specific button. One common approach is simply repetitively depressing (i.e., clicking) a button. Applications and operating systems generally use xe2x80x9cdouble clicking,xe2x80x9d for instance, to perform additional functions with a graphical user interface element. Some applications even respond to three or more successive clicks to perform different functions on a computer.
Determining what operation is desired by the user when clicking a pointing device button is often complicated by having several functions to distinguish. For example, some operating systems and applications allow for holding down a pointing device button to select an area of the screen or to xe2x80x9cdrag and dropxe2x80x9d a GUI element. Similarly, a single click may simply highlight a GUI element and a double click may execute a function for the GUI element. Therefore, timing thresholds between button depressions and/or button transitions are generally used to determine which operation is desired. For example, two clicks which occur within a timing threshold may be deemed a double click, whereas two clicks occurring beyond the timing threshold may be deemed as two single clicks.
Fixed timing thresholds to distinguish button clicks tend to frustrate some users. A novice user or a physically impaired user may click too slowly, for example, to perform a double click operation. However, lengthening the duration of time in which a second click must occur in all instances in order to perform a double click would be inappropriate for the vast number of users, i.e., the user would have to wait for a longer period of time between desired single clicks to avoid an inadvertent double click and the user would find the GUI slower to respond to single clicks.
Fixed timing thresholds also may limit the choice of GUI pointing devices or software application suitable for certain operating systems and applications. Pointing devices such as used on a hand-held computer or a voice activated system may physically limit how quickly a double click may be performed.
The ability to adjust click timing thresholds for button monitoring of GUI pointing devices has generally required action by the user. In some operating systems, the user must, by trial and error, vary a timing setting in a GUI control panel. It has also been suggested that the user may be prompted to double click upon a dedicated GUI element displayed in a control panel whereupon the system adjusts the timing setting based upon the length of time required to execute two clicks.
Such adjustments are an inconvenience to the user and thus tend to be performed irregularly. Consequently, the GUI may be inappropriately set when switching between applications or when different users access the same GUI. For example, a parent may start a computer system and then allow a child to play a game. The parent prefers that the computer system remain set up primarily for himself; however, the child may find it difficult to double click quickly enough on elements of the game. Even the same user may change over time their interaction with the GUI, such as due to fatigue.
Therefore, a significant need exists for a less intrusive and more flexible manner of adjusting button monitoring of a graphical user interface pointing device.
The invention addresses these and other problems associated with the prior art in providing an apparatus, program product, and method in which a click time threshold, used to recognize subsequent click events on a graphical user interface in response to a user interacting with an application with a click event. More specifically, the actuations of a button of a user-manipulated pointing device are monitored. A click event is posted for the application when a predetermined number of button clicks occur within a click time threshold. In addition to this user interaction with the application, advantageously a duration of the predetermined number of button clicks is determined. Then, the click time threshold is adjusted responsive to the duration of the predetermined number of button clicks. Consequently, subsequent click events are recognized as appropriate to the usage.
In another aspect consistent with the invention, a stored click time value is associated with an application resident in memory so that, upon activation of the application, the click time threshold is initialized to the stored click time value.
These and other advantages and features, which characterize the invention, are set forth in the claims annexed hereto and forming a further part hereof. However, for a better understanding of the invention, and of the advantages and objectives attained through its use, reference should be made to the Drawings, and to the accompanying descriptive matter, in which there are described exemplary embodiments of the invention.